Pacotes

Aula 3, M1

Carolina Musso

Sala de Situação - UnB

Até agora

  • Muitas coisas novas: Vamos recapitular, revisitar e aprofundar!

  • Lembre que é um curso numa ordem não muito usual…

Hoje: O que são pacotes

  • São como “extensões”, um conjunto de funções
    • Muitos coisas novas desenvolvidas desde 1993
    • Afinal, é muito difícil sempre atualizar o código base
    • Além disso, nem todo mundo precisa de tudo…

Sobre pacotes …

- Usaremos muitos pacotes! - Vimos alguns no exercício da aula passada. - Dificilmente você fará as análises só com o Base - Dificilmente o pacote que você precisa não existe - Se não existir você pode desenvolver um um dia!

Estudo complementar

- Sugestão de pacotes, EpiR-Handbook

CRAN

- Você mesmo pode desenvolver um pacote e disponibilizar para a comunidade.

Github

- Pacotes que não estão no CRAN - E/Ou versões ainda em desenvolvimento (mais recentes) - Um exemplo

Instalar e Carregar

Para utilizar um pacote é preciso instalá-lo (uma única vez) e depois carregá-lo (sempre que for usar)

Jeito clássico

# para instalar
install.packages("tidyverse") # precisa estar entre aspas

# para carregar
library(tidyverse) #pode estar entre aspas ou não

Pacote Pacman

Mas nós vamos fazer de outro jeito! Vamos usar um pacote que gerencia pacotes (eu disse que tinha pacotes para tudo!)

  • Verifica a instalação e carrega! : Garantir reprodutibilidade e automatização.

Usamos isso na aula passada!

- Consegue identificar no código?

  • A cada novo pacote que resolvermos usar: basta adicionar lista inicial

  • Na primeira vez que rodar o script ele vai instalar, então vai demorar mais

O que são funções

- O pacote é um conjunto de funções… mas o que são funções?

  • “Funções em programação é um conjunto de instruções para simplificar uma tarefa repetitiva”

    • Geralmente têm cara de “verbo”
  • O R aceita os argumentos sem nome, se estiverem na ordem correta.
  • Calma: Voltaremos a esse assunto nas próximas aulas!

Exemplos:

### Função de instalação

install.packages("tidyverse")
install.packages(pkgs="tidyverse")

Função de carregamento

pacman::p_load("tidyverse")
#OU
library(pacman)
p_load("tidyverse")

Outros exemplos

sqrt(9)
[1] 3
round(3.89, digits = 0 )
[1] 4
round(3.89,  0 )
[1] 4

Carregar pacotes

- Para utilizar as funções deles - usar o library ou explicitar o nome do pacote antes da função - só carrega para aquela função - pode ser útil quando há conflitos entre pacotes

Conflitos entre pacotes

pacman::p_load(tidyverse, papeR)

cars %>% 
  summarise(media=mean(dist))
         N    Mean    SD   Min Q1 Median Q3 Max
1 speed 50   15.40  5.29     4 12     15 19  25
2  dist 50   42.98 25.77     2 26     36 56 120
cars %>% 
  dplyr::summarise(media=mean(dist))
  media
1 42.98

O pacote tidyverse

- Deixou a linguagem bem mais simples

RBase

head(cars[cars$speed>7,],3)
  speed dist
5     8   16
6     9   10
7    10   18

Com o tidyverse

cars %>% #isso chama pipe
  filter(speed>7) %>% 
  head(3)
  speed dist
1     8   16
2     9   10
3    10   18

O pipe

O pipe %>% é do pacote magrittr, mas!

  • Todo mundo gostou tanto que agora o Rbase tem um desde a verão 4.2

    • |>
  • Atalho no teclado: ctrl + m

  • Falaremos mais dele quando aprendermos mais funções!

Até a próxima aula!

- Não se equeçam de fazer os exercícios e aprofundar as leituras!